<template>
	<view>
		<button type="default" size="mini" @click="login">提交</button>
		<button type="default" size="mini" @click="task">task</button>
	</view>
</template>

<script>
	export default {
		data() {
			return {

			}
		},
		methods: {
			
			// task()传到一半停止
			task(){
				const task = uni.request({
					url:'http://127.0.0.1:8888/api/private/v1/login',
					data: {
						username: "admin",
						password: "123456"
					},
					method: "POST",
					success: (data) => {
						console.log(data)
					}
				})
				console.log(task)
				task.abort()
			},
			async login() {
				// http://127.0.0.1:8888/api/private/v1/login
				// uni.request({
				// 	url: 'http://127.0.0.1:8888/api/private/v1/login',
				// 	data: {
				// 		username: "admin",
				// 		password: "123456"
				// 	},
				// 	method: "POST",
				// 	success: (data) => {
				// 		console.log(data)
				// 	}
				// })
				// uni.request已经做了promise,不可以写这样的
				const [,{data:{data,meta}}] = await uni.request({
					url: 'http://127.0.0.1:8888/api/private/v1/login',
					data: {	
						username: "admin",
						password: "123456"
					},
					method: "POST",
				})
				// 异步的方法 在html里边localstore,sessionstore
				// 小程序和uniapp里边都是用的setStorage来保存的
				uni.setStorage({
					key:"token",
					data:data.token,
					success: (data) => {
						console.log("存储成功")
					},
					fail: () => {
						console.log("存储失败")
					}
				})
				// console.log(data)
				// 同步的方法
				try{
					// 想知道有没有保存功能的话,需要去捕获异常
					// 数据量少,数据一多,就会导致程序卡顿或者是缓慢
					uni.setStorageSync('id',10)
				}catch(err){
					console.log(err)
				}
				
				
				
			}
		}
	}
</script>

<style>

</style>
